本指南說(shuō)明如何通過(guò)網(wǎng)絡(luò)在服務(wù)器之間共享文件。NFS 代表網(wǎng)絡(luò)文件系統(tǒng),可用于通過(guò)附加的文件系統(tǒng)在本地訪問(wèn)遠(yuǎn)程服務(wù)器的數(shù)據(jù)。此示例由 2 臺(tái)服務(wù)器組成,其中一臺(tái)將充當(dāng)主機(jī) (storage1),第二臺(tái)將充當(dāng)客戶(hù)端 (storage2),文件系統(tǒng)將從主機(jī)附加到該客戶(hù)端。
連接到主機(jī)和客戶(hù)端并安裝 nfs-utils 包。
CentOS 上的 NFS:
[root@storage1 ~]# yum -y install nfs-utils [root@storage2 ~]# yum -y install nfs-utils
Ubuntu/Debian 上的 NFS:
[root@storage1 ~]# yum -y install nfs-common [root@storage2 ~]# yum -y install nfs-common
創(chuàng)建一個(gè)將與客戶(hù)端-服務(wù)器共享的目錄。如果已經(jīng)創(chuàng)建,則跳過(guò)此步驟。
[root@storage1 ~]# mkdir -p /home/data
為共享文件夾分配權(quán)限和所有權(quán)。
[root@storage1 ~]# chmod -R 755 /home/data/ [root@storage1 ~]# chown nfsnobody:nfsnobody /home/data/
啟動(dòng) NFS 服務(wù)
[root@storage1 ~]# systemctl enable rpcbind [root@storage1 ~]# systemctl enable nfs-server 創(chuàng)建了從 /etc/systemd/system/multi-user.target.wants/nfs-server.service 到 /usr/lib/systemd/system/nfs-server.service 的符號(hào)鏈接。 [root@storage1 ~]# systemctl enable nfs-lock [root@storage1 ~]# systemctl enable nfs-idmap [root@storage1 ~]# systemctl start rpcbind [root@storage1 ~]# systemctl start nfs-server [root@storage1 ~]# systemctl start nfs-lock [root@storage1 ~]# systemctl start nfs-idmap
通過(guò)編輯文件 /etc/exports 定義將與哪個(gè)客戶(hù)端共享的文件夾
[root@storage1 ~]# vi /etc/exports
在這種情況下,文件的內(nèi)容將如下所示,其中 181.215.247.22 是客戶(hù)端-服務(wù)器公共 IP 地址。
/home/data 181.215.247.22(rw,sync,no_root_squash)
重新啟動(dòng) NFS 服務(wù)。
[root@storage1 ~]# systemctl restart nfs-server
在客戶(hù)端-服務(wù)器中選擇共享文件夾將被掛載的目錄或創(chuàng)建一個(gè)新文件夾。
[root@storage2 ~]# mkdir -p /home/mystorage/
將文件系統(tǒng)從主機(jī)附加到客戶(hù)端。
[root@storage2 ~]# mount -t nfs 2.58.28.45:/home/data /home/mystorage/
檢查文件系統(tǒng)是否附加成功。
[root@storage2 ~]# df -h 已使用的文件系統(tǒng)大小可用使用百分比已安裝在 devtmpfs 185M 0 185M 0% /dev tmpfs 209M 0 209M 0% /dev/shm tmpfs 209M 8.8M 200M 5%/運(yùn)行 tmpfs 209M 0 209M 0% /sys/fs/cgroup /dev/sda1 10G 2.0G 8.1G 20% / tmpfs 42M 0 42M 0% /run/user/0 2.58.28.45:/home/data 10G 2.1G 8.0G 21% /home/mystorage
我們?cè)谥鳈C(jī)服務(wù)器中有一個(gè)文本文件:
[root@storage1 ~]# cat /home/data/file.txt 此文本文件存在于 storage1 中
現(xiàn)在可以在客戶(hù)端-服務(wù)器中本地訪問(wèn)它:
[root@storage2 ~]# cat /home/mystorage/file.txt 此文本文件存在于 storage1 中
為了在客戶(hù)端-服務(wù)器重新啟動(dòng)后保持文件系統(tǒng)掛載,在文件 /etc/fstab 底部添加以下行,其中 2.58.28.45 是主機(jī)服務(wù)器公共 IP 地址。
2.58.28.45:/home/data /home/mystorage nfs 默認(rèn) 0 0